package DAO;

import java.io.*;
import java.util.*;
import javax.persistence.Query;

public interface GenericDAO <T, ID> {
	
	public void save(T entity);

	public void merge(T entity);

	public void delete(Object entity); 

	public List<T> findAll(Class<? extends Serializable> clazz); 

	public List<T> findMany(Query query); 
	
	public T findOne(Query query); 

	public T findByID(Class<? extends Serializable> clazz, Integer id);
}